import type { Address, ExpressData, medicalDetailData, MedicalOrderDetail, OrderPre } from '@/types/medicine'
import request from '@/utils/request'

//获取收货地址
export const getAddressListAPI = () => {
  return request.get<null, Address[]>('/patient/order/address')
}

/**
 * 药品预付订单
 * prescriptionId:处方Id
 */
export const getPreOrderAPI = (prescriptionId: string) => {
  return request.get<null, OrderPre>('/patient/medicine/order/pre', { params: { prescriptionId } })
}

/**
 * 药品待支付订单
 * id:处方 id
 * addressId: 地址id
 */
export const createOrderAPI = (id: string, addressId: string) => {
  return request.post<null, { id: string }>('/patient/medicine/order', { id, addressId })
}

/**
 * 获取药品订单详情
 * @param id 订单id
 * @returns
 */
export const getMedicalOrderDetail = (id: string) => {
  return request.get<null, MedicalOrderDetail>(`/patient/medicine/order/detail/${id}`)
}

/**
 * 药品订单列表
 */
export const getMedicineOrderListAPI = (status = 10, current = 1, pageSize = 10) => {
  return request.get<null, medicalDetailData>('/patient/medicine/order/mylist', {
    params: { status, current, pageSize },
  })
}

// 获取药品订单物流信息
export const getMedicalOrderLogistics = (id: string) => {
  return request.get<null, ExpressData>(`/patient/order/${id}/logistics`)
}
